//
// Created by Administrator on 2025/4/22/周二.
//
#include "iostream"

using namespace std;

class Person {

public:
    int m_A;
    int m_B;
public:

    //空构造
    Person() {}

    //有参构造
    Person(int a, int b) {
        this->m_A = a;
        this->m_B = b;

    }

    //成员函数实现+号运算符重载
    Person operator+(const Person &p) {
        Person temp;
        temp.m_A = this->m_A + p.m_A;
        temp.m_B = this->m_B + p.m_B;
        return temp;
    }

//    全局函数实现 + 号运算符重载
//    Person operator+(const Person &p1, const Person &p2) {
//        Person temp(0, 0);
//        temp.m_A = p1.m_A + p2.m_A;
//        temp.m_B = p1.m_B + p2.m_B;
//        return temp;
//    }



};


void test1() {
    Person p1;
    p1.m_A = 10;
    p1.m_B = 10;
    Person p2;
    p2.m_A = 10;
    p2.m_B = 10;

    Person p3 = p1 + p2;
    cout << "p3.m_A = " << p3.m_A << endl;
    cout << "p3.m_B = " << p3.m_B << endl;
}


int main() {
    test1();
}